| All Test Modules | GitHub Repository | Coverage Reports | Designed for use with JUnit. |
| Tests | Failures | Errors | Skipped | Success rate | Time |
|---|---|---|---|---|---|
| 250 | 0 | 0 | 2 | 99.20% | 5.697 |
| Note: failures are anticipated and checked for with assertions while errors are unanticipated. |
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Tests | Errors | Failures | Skipped | Time(s) | Time Stamp | Host |
|---|
| Name | Status | Type | Time(s) |
|---|
| Name | Status | Type | Time(s) |
|---|---|---|---|
| Collects nodes in ReferenceHolder π | Success | 0.013 | |
| Accumulates data across multiple node types π | Success | 0.004 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| with(ReferenceHolder) creates builder π | Success | 0.001 | |
| with(ReferenceHolder, Set) creates builder with custom node set π | Success | 0.000 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| Multiple visitors can be chained π | Success | 0.001 | |
| Builder returns itself for chaining π | Success | 0.003 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| Finds assignments π | Success | 0.001 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| Finds enhanced for loops π | Success | 0.001 | |
| Provides access to loop variable π | Success | 0.002 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| Finds if statements π | Success | 0.001 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| Finds all method declarations π | Success | 0.001 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| Filters by method name π | Success | 0.005 | |
| Finds all method invocations π | Success | 0.000 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| Finds return statements π | Success | 0.004 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| Finds type declarations π | Success | 0.001 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| Finds variable declarations π | Success | 0.005 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| processor() provides access to underlying ASTProcessor π | Success | 0.001 |
| Name | Status | Type | Time(s) |
|---|
| Name | Status | Type | Time(s) |
|---|---|---|---|
| Negates simple name without parentheses π | Success | 0.001 | |
| null AST throws exception π | Success | 0.001 | |
| Negates infix expression with parentheses π | Success | 0.004 | |
| null condition throws exception π | Success | 0.000 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| SimpleName not matching varName is not identity π | Success | 0.001 | |
| SimpleName matching varName is identity π | Success | 0.000 | |
| InfixExpression is not identity π | Success | 0.001 | |
| null varName returns false π | Success | 0.004 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| SimpleName is not negated π | Success | 0.001 | |
| PrefixExpression with MINUS is not negated π | Success | 0.000 | |
| PrefixExpression with NOT is negated π | Success | 0.000 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| SimpleName does not need parentheses π | Success | 0.001 | |
| InfixExpression needs parentheses π | Success | 0.000 | |
| null input throws exception π | Success | 0.004 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| Strips negation from PrefixExpression with NOT π | Success | 0.000 | |
| Returns original if not negated π | Success | 0.000 |
| Name | Status | Type | Time(s) |
|---|
| Name | Status | Type | Time(s) |
|---|---|---|---|
| Validation: processEach without compilationUnit should throw π | Success | 0.005 | |
| Collect annotations using collect() method π | Success | 0.005 | |
| Find @SuppressWarnings annotations (SingleMemberAnnotation) π | Success | 0.011 | |
| Find @Override annotations π | Success | 0.010 | |
| Find @Deprecated annotations by fully qualified name π | Success | 0.011 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| Validation: FieldVisitorBuilder requires both annotation and type π | Success | 0.005 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| Find static imports π | Success | 0.012 | |
| Find regular imports π | Success | 0.024 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| Find single method call π | Success | 0.008 | |
| Collect method calls using collect() π | Success | 0.010 | |
| Find multiple method calls π | Success | 0.008 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| Early termination when processor returns false π | Success | 0.008 | |
| Excluding processed nodes π | Success | 0.007 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| ReferenceHolder can be used to collect data π | Success | 0.007 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| Multiple nodes are correctly stored in ReferenceHolder π | Success | 0.026 | |
| ReferenceHolder is correctly populated in processEach and accessible afterwards π | Success | 0.022 | |
| ReferenceHolder.get() returns null for non-existent key - edge case from PR #494 π | Success | 0.015 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| collect() gathers all found nodes π | Success | 0.056 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| forAnnotation skips already processed nodes π | Success | 0.032 | |
| forAnnotation finds MarkerAnnotation and populates ReferenceHolder correctly π | Success | 0.012 | |
| forAnnotation with andImports also finds imports π | Success | 0.015 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| forField with annotation finds FieldDeclaration π | Success | 0.020 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| forImport finds ImportDeclaration and populates ReferenceHolder correctly π | Success | 0.017 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| forMethodCalls with andStaticImports and andImportsOf π | Success | 0.019 | |
| forMethodCalls finds MethodInvocation and populates ReferenceHolder correctly π | Success | 0.028 |
| Name | Status | Type | Time(s) |
|---|
| Name | Status | Type | Time(s) |
|---|---|---|---|
| METHOD_DEFAULT_CHARSET is 'defaultCharset' π | Success | 0.003 | |
| METHOD_GET_PROPERTY is 'getProperty' π | Success | 0.000 | |
| METHOD_LINE_SEPARATOR is 'lineSeparator' π | Success | 0.000 | |
| FIELD_UTF8 is 'UTF_8' π | Success | 0.000 | |
| METHOD_TOSTRING is 'toString' π | Success | 0.000 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| JAVA_LANG_DOUBLE is 'java.lang.Double' π | Success | 0.000 | |
| JAVA_LANG_STRING is 'java.lang.String' π | Success | 0.000 | |
| JAVA_LANG_MATH is 'java.lang.Math' π | Success | 0.000 | |
| JAVA_LANG_LONG is 'java.lang.Long' π | Success | 0.001 | |
| JAVA_LANG_INTEGER is 'java.lang.Integer' π | Success | 0.000 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| METHOD_CONCAT is 'concat' π | Success | 0.001 | |
| METHOD_SUM is 'sum' π | Success | 0.000 | |
| METHOD_MIN is 'min' π | Success | 0.000 | |
| METHOD_MAX is 'max' π | Success | 0.000 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| METHOD_STREAM is 'stream' π | Success | 0.000 | |
| METHOD_FOREACH is 'forEach' π | Success | 0.000 | |
| METHOD_REDUCE is 'reduce' π | Success | 0.000 | |
| METHOD_ANY_MATCH is 'anyMatch' π | Success | 0.000 | |
| METHOD_NONE_MATCH is 'noneMatch' π | Success | 0.001 | |
| METHOD_FILTER is 'filter' π | Success | 0.000 | |
| METHOD_MAP is 'map' π | Success | 0.001 | |
| METHOD_ALL_MATCH is 'allMatch' π | Success | 0.000 | |
| METHOD_FOR_EACH_ORDERED is 'forEachOrdered' π | Success | 0.001 |
| Name | Status | Type | Time(s) |
|---|
| Name | Status | Type | Time(s) |
|---|---|---|---|
| Chaining stops after first match π | Success | 0.014 | |
| isHandled() returns true after match π | Success | 0.011 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| ifPrefixIncrementOrDecrement matches decrement π | Success | 0.009 | |
| ifPrefixExpression matches PrefixExpression π | Success | 0.025 | |
| ifMethodInvocation matches MethodInvocation π | Success | 0.018 | |
| ifSimpleName matches SimpleName π | Success | 0.008 | |
| ifAssignmentWithOperator matches specific operator π | Success | 0.011 | |
| ifPostfixIncrementOrDecrement matches increment π | Success | 0.013 | |
| ifAssignment matches Assignment π | Success | 0.010 | |
| ifMethodInvocationNamed matches by method name π | Success | 0.014 | |
| ifPostfixExpression matches PostfixExpression π | Success | 0.007 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| isHandled() returns false initially π | Success | 0.007 | |
| on() creates NodeMatcher instance π | Success | 0.010 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| ifTypeMatching with predicate π | Success | 0.011 | |
| ifType matches by class type π | Success | 0.007 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| ifThrowStatement matches ThrowStatement π | Success | 0.015 | |
| ifReturnStatement matches ReturnStatement π | Success | 0.007 | |
| ifIfStatementWithElse matches if with else π | Success | 0.008 | |
| ifVariableDeclaration matches VariableDeclarationStatement π | Success | 0.007 | |
| ifContinueStatement matches ContinueStatement π | Success | 0.015 | |
| ifIfStatement matches IfStatement π | Success | 0.007 | |
| ifBlock matches Block π | Success | 0.007 | |
| ifExpressionStatement matches ExpressionStatement π | Success | 0.014 | |
| ifBreakStatement matches BreakStatement π | Success | 0.011 | |
| ifVariableDeclarationMatching with predicate π | Success | 0.017 | |
| ifIfStatementWithoutElse matches if without else π | Success | 0.007 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| orElse does not execute when already handled π | Success | 0.007 | |
| orElse executes when no matcher handled π | Success | 0.007 | |
| orElseGet returns empty when already handled π | Success | 0.006 | |
| orElseGet returns Optional when not handled π | Success | 0.006 | |
| orElseDo executes runnable when not handled π | Success | 0.006 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| isControlFlowStatement returns true for throw π | Success | 0.010 | |
| isControlFlowStatement returns true for continue π | Success | 0.005 | |
| getExpression returns Optional with expression π | Success | 0.005 | |
| getAssignment returns empty for non-assignment π | Success | 0.008 | |
| getAssignment returns Optional with assignment π | Success | 0.006 | |
| isAssignmentStatement returns false for non-assignment π | Success | 0.006 | |
| isControlFlowStatement returns true for return π | Success | 0.006 | |
| isAssignmentStatement returns true for assignment π | Success | 0.006 | |
| isControlFlowStatement returns true for break π | Success | 0.006 | |
| isControlFlowStatement returns false for variable declaration π | Success | 0.002 | |
| getExpression returns empty for non-expression statement π | Success | 0.003 |
| Name | Status | Type | Time(s) |
|---|
| Name | Status | Type | Time(s) |
|---|---|---|---|
| ifFirst executes for first statement π | Success | 0.045 | |
| ifLast executes for last statement π | Success | 0.020 | |
| ifNotLast executes for non-last statement π | Success | 0.009 | |
| ifLast does not execute for non-last statement π | Success | 0.010 | |
| ifOnly executes for only statement π | Success | 0.012 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| Context chaining with ifLast π | Success | 0.016 | |
| getRemainingCount is zero for last statement π | Success | 0.016 | |
| Single statement is first, last, and only π | Success | 0.024 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| processBlock allows early termination π | Success | 0.013 | |
| forSingle creates context for single statement π | Success | 0.017 | |
| forEachInBlock processes all statements π | Success | 0.015 | |
| processBlock returns empty when no match π | Success | 0.008 | |
| forStatement creates context with position info π | Success | 0.011 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| getRemainingStatements returns empty for last statement π | Success | 0.012 | |
| getPrecedingStatements returns statements before current π | Success | 0.008 | |
| getRemainingStatements returns statements after current π | Success | 0.017 | |
| getPrecedingStatements returns empty for first statement π | Success | 0.012 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| nextIs returns true for matching type π | Success | 0.015 | |
| nextIs with predicate returns true when both match π | Success | 0.036 | |
| nextMatches returns true when predicate matches π | Success | 0.008 | |
| matcher returns NodeMatcher for statement π | Success | 0.011 | |
| nextMatches returns false when predicate does not match π | Success | 0.008 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| getNextStatement returns next statement π | Success | 0.011 | |
| getPreviousStatement returns previous statement π | Success | 0.007 | |
| getPreviousStatement returns empty for first statement π | Success | 0.010 | |
| getStatementAt returns empty for out of bounds π | Success | 0.007 | |
| getNextStatement returns empty for last statement π | Success | 0.005 | |
| getStatementAt returns statement at negative offset π | Success | 0.007 | |
| getStatementAt returns statement at positive offset π | Success | 0.010 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| getRemainingCount returns correct count π | Success | 0.007 | |
| isMiddle returns false for first statement π | Success | 0.009 | |
| hasNext returns false for last statement π | Success | 0.010 | |
| isOnly returns true for single statement π | Success | 0.008 | |
| hasNext returns true when there are more statements π | Success | 0.005 | |
| isLast returns true for last statement π | Success | 0.013 | |
| isMiddle returns true for middle statement π | Success | 0.007 | |
| isFirst returns false for non-first statement π | Success | 0.008 | |
| isFirst returns true for first statement π | Success | 0.017 | |
| hasPrevious returns true when there are previous statements π | Success | 0.010 | |
| hasPrevious returns false for first statement π | Success | 0.007 |
| Name | Status | Type | Time(s) |
|---|
| Name | Status | Type | Time(s) |
|---|---|---|---|
| testAnnotationPatternMatching π | Success | 0.770 | |
| testNoMatchesForDifferentAnnotation π | Success | 0.014 | |
| testAnnotationWithQualifiedType π | Success | 0.042 | |
| testMultipleAnnotationMatches π | Success | 0.016 | |
| testAnnotationWithPlaceholder π | Success | 0.058 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| testMultiPlaceholderConsistencyCheck π | Success | 0.009 | |
| testMultiPlaceholderMatchesZeroArguments π | Success | 0.010 | |
| testMultiPlaceholderMatchesOneArgument π | Success | 0.005 | |
| testMultiPlaceholderMatchesMultipleArguments π | Success | 0.001 | |
| testMultiPlaceholderMatchesVariousArgumentTypes π | Success | 0.004 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| testSimpleField π | Success | 0.013 | |
| testFieldWithPlaceholderType π | Success | 0.006 | |
| testSimpleMarkerAnnotation π | Success | 0.006 | |
| testSimpleMethodCall π | Success | 0.012 | |
| testSimpleImport π | Success | 0.002 | |
| testMultipleImports π | Success | 0.007 | |
| testFieldWithAnnotation π | Success | 0.009 | |
| testMultipleAnnotationsOnSameElement π | Success | 0.007 | |
| testMethodCallWithMultipleArguments π | Success | 0.008 | |
| testAnnotationWithParameters π | Success | 0.006 | |
| testMethodCallWithPlaceholderQualifier π | Success | 0.006 | |
| testStaticImport π | Success | 0.002 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| testParseSimpleExpression π | Success | 0.002 | |
| testParsePlaceholderExpression π | Success | 0.005 | |
| testParseMethodInvocation π | Success | 0.006 | |
| testParseIfStatement π | Skipped | org.opentest4j.AssertionFailedError: Parser should return a non-null node ==> expected: not <null>
at org.junit.jupiter.api.AssertionFailureBuilder.build(AssertionFailureBuilder.java:152)
at org.junit.jupiter.api.AssertionFailureBuilder.buildAndThrow(AssertionFailureBuilder.java:132)
at org.junit.jupiter.api.AssertNotNull.failNull(AssertNotNull.java:49)
at org.junit.jupiter.api.AssertNotNull.assertNotNull(AssertNotNull.java:35)
at org.junit.jupiter.api.Assertions.assertNotNull(Assertions.java:312)
at org.sandbox.jdt.triggerpattern.test.PatternParserTest.testParseIfStatement(PatternParserTest.java:73)
at java.base/java.lang.reflect.Method.invoke(Method.java:580)
at java.base/java.util.ArrayList.forEach(ArrayList.java:1596)
at java.base/java.util.ArrayList.forEach(ArrayList.java:1596) |
0.000 |
| testParseReturnStatement π | Success | 0.002 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| testNonPlaceholderMustMatchExactly π | Success | 0.014 | |
| testMultipleSamePlaceholdersMustMatch π | Success | 0.005 | |
| testDifferentPlaceholdersBindIndependently π | Success | 0.009 | |
| testPlaceholderBinds π | Success | 0.004 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| testMultipleSamePlaceholder π | Success | 0.020 | |
| testNoMatchesFound π | Success | 0.006 | |
| testFindSingleMatch π | Success | 0.006 | |
| testStatementPattern π | Skipped | org.opentest4j.AssertionFailedError: Should find one statement pattern match ==> expected: <1> but was: <0>
at org.junit.jupiter.api.AssertionFailureBuilder.build(AssertionFailureBuilder.java:151)
at org.junit.jupiter.api.AssertionFailureBuilder.buildAndThrow(AssertionFailureBuilder.java:132)
at org.junit.jupiter.api.AssertEquals.failNotEqual(AssertEquals.java:197)
at org.junit.jupiter.api.AssertEquals.assertEquals(AssertEquals.java:150)
at org.junit.jupiter.api.Assertions.assertEquals(Assertions.java:563)
at org.sandbox.jdt.triggerpattern.test.TriggerPatternEngineTest.testStatementPattern(TriggerPatternEngineTest.java:134)
at java.base/java.lang.reflect.Method.invoke(Method.java:580)
at java.base/java.util.ArrayList.forEach(ArrayList.java:1596)
at java.base/java.util.ArrayList.forEach(ArrayList.java:1596) |
0.000 |
| testFindMultipleMatches π | Success | 0.008 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| testAncestorNavigation π | Success | 0.032 | |
| testAssignmentByOperator π | Success | 0.018 | |
| testHierarchicalSearch π | Success | 0.002 | |
| testInfixExpressionByOperator π | Success | 0.020 | |
| testMethodDeclarationByName π | Success | 0.001 | |
| testSingleVisitor π | Success | 0.007 | |
| testCatchClauseByExceptionType π | Success | 0.027 | |
| testFieldDeclarationByType π | Success | 0.021 | |
| testClassInstanceCreationWithTypeAndNavigate π | Success | 0.002 | |
| testMethodInvocationFiltering π | Success | 0.001 | |
| testTypeDeclarationByName π | Success | 0.002 | |
| testSuperMethodInvocationByName π | Success | 0.012 | |
| testBasicChaining π | Success | 0.001 | |
| testForStatementWithTypeFilter π | Success | 0.018 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| testCoordinatedMultiPhaseProcessing π | Success | 0.039 | |
| testCombiningVisitorsWithOr π | Success | 0.020 | |
| testCombiningVisitorsWithAnd π | Success | 0.002 | |
| testDynamicVisitorRemoval π | Success | 0.005 | |
| testTrackingProcessedNodes π | Success | 0.004 | |
| testNegateFilter π | Success | 0.002 | |
| testStatefulVisitorBehavior π | Success | 0.002 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| testMethodNameFiltering π | Success | 0.004 | |
| testMethodNameFilteringTraditional π | Success | 0.001 | |
| testTraditionalVisitorApproach π | Success | 0.003 | |
| testLambdaExpression π | Success | 0.000 | |
| testSkipChildNodes π | Success | 0.000 | |
| testMultipleNodeTypes π | Success | 0.004 | |
| testVisitEndCallback π | Success | 0.001 | |
| testBasicMethodReference π | Success | 0.000 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| matcherTest π | Success | 0.005 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| testCountingWithStaticMethod π | Success | 0.011 | |
| testComplexDataStructures π | Success | 0.005 | |
| testCollectingNodePositions π | Success | 0.001 | |
| testCountingNodes π | Success | 0.004 | |
| testLazyInitialization π | Success | 0.004 | |
| testSharedDataBetweenCallbacks π | Success | 0.001 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| testCallbackSignatures π | Success | 0.005 | |
| testBasicUsagePattern π | Success | 0.001 | |
| testVisitEndCallbacks π | Success | 0.001 | |
| testApiOverview π | Success | 0.000 | |
| testDataSharingPatterns π | Success | 0.004 | |
| testStaticHelperMethods π | Success | 0.002 | |
| testVisitorRegistration π | Success | 0.004 |
| Name | Status | Type | Time(s) |
|---|---|---|---|
| testNestedHierarchicalSearch π | Success | 0.005 | |
| testFluentApiWithMethodFiltering π | Success | 0.002 | |
| testMethodInvocationByType π | Success | 0.005 | |
| testMultiPhaseProcessing π | Success | 0.005 | |
| testSimpleFluentApi π | Success | 0.000 | |
| testDynamicVisitorModification π | Success | 0.000 | |
| testFluentApiWithNavigation π | Success | 0.001 | |
| testComplexDataCollection π | Success | 0.004 |
All Test Reports | Coverage Reports | GitHub Repository
Generated by Sandbox